package tech.aistar.day06.design.dp.version01;

/**
 * 本类用来演示: 人购买房子
 *
 * @author: success
 * @date: 2021/3/15 4:17 下午
 */
public class Person {

    //买家类中直接维护了房源的对象

    //Person和具体的房子之间产生了依赖关系 - 产生了耦合..
    //导致人去看房,违背了迪米特原则[最少知道原则]
    //实际情况 - 人应该是要看很多房子的.
    //一个类对自己依赖的类知道的越少越好
    private HighLevelHouse highLevelHouse;

    public Person(HighLevelHouse highLevelHouse){
        this.highLevelHouse = highLevelHouse;
    }


    public void setHighLevelHouse(HighLevelHouse highLevelHouse) {
        this.highLevelHouse = highLevelHouse;
    }

    public void buy(String name){
       highLevelHouse.desc(name);
    }
}
